"""
@name : python2-python3
@author : wenyao
@projectname: sanchuanglianxi
"""
#python2  centos6-7  系统默认的python版本
#python3  centos8   默认支持下载
#yum list |grep python3

#为什么要了解python2
#python2还是有很大的用户基群，企业中很多代码还是用python2写的，历史遗留问题。
#python2在2020年官方不维护了

#python2  vs  python3
#虚拟机中下载 python2
#yum  install python2.x86_64

#1、输入输出
#python2：print "abc"
#python3： print("abc")

#python2:  input默认接收整型数据，str类型要用引号包起来， 用raw_input函数接收字符串。
#python3： input函数接收  获得输入为str类型。

#2、数据类型与运算符
#整除
#python3 中 / 表示真除
#python2中  /  整数相处只能获取商值， 浮点型数据相除才能获得真实数据

#整型数据
#python2中整型区分int 和long
#python3中都为int类型


#3、range和xrange的区别
#python2  原：range(0,4)  结果就是返回一个列表[0,1,2,3]
#python3  list(range(0,4))转化成列表，废除xrange，此range就是python2中的xrange

#4、异常机制
#python2
# >>> try:
# ...    a = 1/0
# ... except Exception,e:
# ...    print e

#python3
# >>> try:
# ...    a = 1/0
# ... except Exception as e:
# ...    print(e)

#5、字符编码
#python2 默认编码是ascii码
#python3 默认是utf-8

#含有中文需要做编码申明
#-*-coding: utf-8-*-
#encoding=utf-8

#6、布尔类型 True False
#python2 True、False 是两个变量 可以更改
#python3  True、False变成两个关键字 不能进行修改

#7、模块导入
#python3  默认以绝对导入方式导入模块
#python2  默认是相对导入

#8、字符串
#python2   unicode类型表示字符串序列，str类型表示字节序列
#python3    str类型表示字符串序列，byte类型表示字节序列

#python2  模块__future__
#>>> from __future__ import division
# >>> 5/4
# 1.25
# >>> print "abc"
# abc
# >>> from __future__ import print_function
# >>> print "abc"
#   File "<stdin>", line 1
#     print "abc"
#               ^
# SyntaxError: invalid syntax
# >>> print("abc")
# abc
#












